Skip to content

[CI] Resolve target membership issues after migrating to buildable folders#3949

Merged
testableapple merged 4 commits into
developfrom
ci/xcode-tests-membership-exceptions
Feb 4, 2026
Merged

[CI] Resolve target membership issues after migrating to buildable folders#3949
testableapple merged 4 commits into
developfrom
ci/xcode-tests-membership-exceptions

Conversation

@testableapple
Copy link
Copy Markdown
Contributor

@testableapple testableapple commented Feb 4, 2026

📝 Summary

Xcode buildable folders have been implemented in https://github.com/GetStream/stream-chat-swiftui/pull/3940

There are two issues:

1.

I noticed that all the snapshots were added to membershipExceptions because Tests is part of fileSystemSynchronizedGroups which also makes all snapshots to be part of the project.

Snapshots are read by testing framework from the file system, they should not be part of the project. Moreover, having them as part of the project may produce conflicts on adding new tests if there is at least one file in the project with a shared target membership (which is kind of weird, but it is as it is).

Excluding Tests from fileSystemSynchronizedGroups and adding membership to all the target files manually seems to be fixing the issue. All new files will have target membership out of the box and all new snapshots won't be added to the bundle or membershipExceptions.

2.

When creating a file via Agent, it could have the wrong target membership. Updated AGENTS.md to prevent this from happening.

🧪 Manual Testing Notes

  1. Test the tests
  • Run StreamChatUITests locally. Some snapshot tests may fail because local snapshots might not be equal to CI ones, but at least nothing should crash.
  1. Try adding new random snapshot test to StreamChatUITests and run it

Summary by CodeRabbit

  • Documentation
    • Updated development guidance documentation with enhanced checklist items and additional notes regarding file organization and configuration procedures in the development workflow.

@testableapple testableapple requested a review from a team as a code owner February 4, 2026 16:05
@testableapple testableapple added the 🤖 CI/CD Any work related to CI/CD label Feb 4, 2026
@coderabbitai
Copy link
Copy Markdown

coderabbitai Bot commented Feb 4, 2026

Important

Review skipped

Review was skipped as selected files did not have any reviewable changes.

💤 Files selected but had no reviewable changes (1)
  • StreamChat.xcodeproj/project.pbxproj

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

  • 🔍 Trigger a full review
📝 Walkthrough

Walkthrough

This PR adds documentation guidance to AGENTS.md about Xcode target membership for new files, including a requirement description and a checklist reminder item. No functional code changes.

Changes

Cohort / File(s) Summary
Documentation guidance
AGENTS.md
Added guidance about ensuring new source/resource files are assigned to correct Xcode targets and that project files are updated accordingly. Added corresponding checklist item.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~2 minutes

Possibly related PRs

Suggested reviewers

  • nuno-vieira
  • martinmitrevski

Poem

🐰 In targets deep, files must belong,
Lest Xcode projects go all wrong,
Check the boxes, get it right,
Swift compiles with pure delight!

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The PR title mentions 'target membership issues' and 'buildable folders migration,' which are directly addressed in the changes. However, the actual changes in this commit only document guidance in AGENTS.md about target membership; the broader technical fixes (excluding Tests from fileSystemSynchronizedGroups) are described in the PR objectives but not reflected in this specific changeset.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch ci/xcode-tests-membership-exceptions

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented Feb 4, 2026

1 Error
🚫 Please use more than one word.
55528ba
1 Warning
⚠️ Big PR

Generated by 🚫 Danger

@Stream-SDK-Bot
Copy link
Copy Markdown
Collaborator

SDK Size

title develop branch diff status
StreamChat 8.6 MB 8.6 MB 0 KB 🟢
StreamChatUI 4.91 MB 4.91 MB 0 KB 🟢

Copy link
Copy Markdown
Member

@nuno-vieira nuno-vieira left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! ✅

@sonarqubecloud
Copy link
Copy Markdown

sonarqubecloud Bot commented Feb 4, 2026

@testableapple testableapple merged commit 7006847 into develop Feb 4, 2026
22 of 24 checks passed
@testableapple testableapple deleted the ci/xcode-tests-membership-exceptions branch February 4, 2026 18:54
testableapple added a commit that referenced this pull request Feb 12, 2026
* [CI] Convert Xcode groups to buildable folders (#3940)

* [CI] Delete unused test artifact (#3944)

* [CI] Resolve mock server compilation issue (#3946)

* [CI] Resolve target membership issues after migrating to buildable folders (#3949)

* Make the members and messages size in ChannelListQuery optional (#3951)

* Prevent adding back deleted reactions in case of client errors (#3956)

* Fix refreshing channel when setting push notification preference for the first time (#3954)

* Bump 4.97.1

* Update release version to snapshot

---------

Co-authored-by: Martin Mitrevski <martinmitrevski.oh@gmail.com>
Co-authored-by: Toomas Vahter <toomas.vahter@getstream.io>
Co-authored-by: Stream Bot <ci@getstream.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

🤖 CI/CD Any work related to CI/CD

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants